#include <vector>
#include <iostream>
using namespace std;

//由于移动构造的存在，所以代码可以运行
class A{
	private:
		int a;
	public:
		A():a(0){}
		//注意拷贝构造函数的const问题
		A(const A&) {};
		A(A&&):a(-1){}
		int get(){return a;}
};

int main(int argc, char *argv[])
{
	vector<A> pt;
	A a;
	//push_back有两个版本：左值const & 和右值 &&
	pt.push_back(std::move(a));
	return 0;
}
